package com.CST.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @author ly
 * @since 2021-12-08
 */
@ApiModel(value = "")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("RD_CostSalaryRelation")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class RdCostsalaryrelation implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "ID", type = IdType.AUTO)
    @ExcelIgnore
    private Integer id;

    @ApiModelProperty(value = "工资项目编号")
    @ExcelProperty(value = "工资项目编号", index = 2)
    private String salaryItemCode;

    @ApiModelProperty(value = "工资项目名称")
    @ExcelProperty(value = "工资项目名称", index = 3)
    private String salaryItemName;

    @ApiModelProperty(value = "费用要素编号")
    @ExcelProperty(value = "成本项目编码", index = 4)
    private String costItemCode;

    @ApiModelProperty(value = "费用要素名称")
    @ExcelProperty(value = "成本项目名称", index = 5)
    private String costItemName;

    @ApiModelProperty(value = "")
    @ExcelProperty(value = "账套编码", index = 0)
    @TableField("RuleCode")
    private String ruleCode;

    @ApiModelProperty(value = "扩展字段1")
    @TableField("ExtendField1")
    @ExcelIgnore
    private String extendField1;

    @ExcelIgnore
    @ApiModelProperty(value = "扩展字段2")
    @TableField("ExtendField2")
    private String extendField2;

    @ApiModelProperty(value = "账套名称")
    @ExcelProperty(value = "账套名称", index = 1)
    @TableField("ExtendField3")
    private String extendField3;

    @ApiModelProperty(value = "是否有效")
    @ExcelProperty(value = "是否启用", index = 6)
    @TableField("RowStatus")
    private String rowStatus;

    @ExcelIgnore
    @ApiModelProperty(value = "创建人")
    @TableField("CreatedBy")
    private String createdBy;

    @ExcelIgnore
    @ApiModelProperty(value = "创建时间", example = "2020-02-05 13:30:41")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss", iso = DateTimeFormat.ISO.DATE_TIME)
    @TableField("CreatedOn")
    private String createdOn;

    @ExcelIgnore
    @ApiModelProperty(value = "修改人")
    @TableField("UpdatedBy")
    private String updatedBy;

    @ExcelIgnore
    @ApiModelProperty(value = "修改时间", example = "2020-02-05 13:30:41")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss", iso = DateTimeFormat.ISO.DATE_TIME)
    @TableField("UpdatedOn")
    private String updatedOn;

    @ExcelIgnore
    @ApiModelProperty(value = "备注")
    @TableField("Remark")
    private String remark;

    @ExcelIgnore
    @ApiModelProperty(value = "年月[供界面选择]")
    @TableField(exist = false)
    private String yearMonth;

    @ExcelIgnore
    @TableField(exist = false)
    private int pageIndex;

    @ExcelIgnore
    @TableField(exist = false)
    private int pageSize;

    @ExcelIgnore
    @ApiModelProperty(value = "账套")
    @TableField(exist = false)
    private String acSetName;

}
